#include <bits/stdc++.h>

using namespace std;

int n;
vector<int> father(1001, 0);

void init()
{
    for (int i = 1; i <= n; i++)
    {
        father[i] = i;
    }
}

int find(int u)
{
    return u == father[u] ? u : father[u] = find(father[u]);
}

bool is_same(int u,int v)
{
    u=find(u);
    v=find(v);
    if(u==v)
    {
        return true;
    }
    else
    {
        return false;
    }
}

void join(int u,int v)
{
    u=find(u);
    v=find(v);
    if(u==v)
    {
        return;
    }
    else
    {
        father[v]=u;
    }
}

int main()
{
    int s, t;
    cin >> n;
    init();
    while(n--)
    {
        cin>>s>>t;
        if(::is_same(s,t))
        {
            cout<<s<<" "<<t<<endl;
        }
        else
        {
            join(s,t);
        }
    }
    return 0;
}